#define _CRT_SECURE_NO_WARNINGS 1
//#include<iostream>
//using namespace std;
//#include<string>
//#include<cctype>
//int main() {
//    string s;
//    getline(cin, s);
//    auto it = s.begin();
//    int sum = 0;
//    while (it != s.end()) {
//        if (isalnum(*it)) {
//            sum += 1;
//        }
//        ++it;
//    }
//    cout << sum << endl;
//    return 0;
//}

//#include<iostream>
//using namespace std;
//#include<string>
//int main() {
//	int n;
//	cin >> n;
//	string player1;
//	string player2;
//	for (int i = 0; i < n; i++) {
//		cin >> player1 >> player2;
//		if (player1 == "Rock" && player2 == "Scissors" || player1=="Scissors" && player2=="Paper" || player1=="Paper" && player2=="Rock") {
//			cout << "Player1" << endl;
//		}
//		else if (player1 == player2) {
//			cout << "Tie" << endl;
//		}
//		else {
//			cout << "Player2" << endl;
//		}
//	}
//	return 0;
//}


//#include<iostream>
//using namespace std;
//#include<string>
//#include<cctype>
//int main() {
//	string s;
//	string obj;
//	getline(cin, s);
//	for (char ch : s) {
//		if (isalpha(ch)) {
//			if (ch == 'a') {
//				obj += 'z';
//			}
//			else if (ch == 'A') {
//				obj += 'Z';
//			}
//			else {
//				obj += (ch - 1);
//			}
//		}
//		else {
//			obj += ch;
//		}
//	}
//	cout << obj << endl;
//	return 0;
//}


//#include<iostream>
//using namespace std;
//#include<string>
//int main() {
//	int n;
//	cin >> n;
//	string s;
//	cin >> s;
//	for (int i = 0; i < n; i++) {
//		int m = 0;
//		cin >> m;
//		switch (m) {
//			case 1:
//			{
//				string tmp;
//				cin >> tmp;
//				s += tmp;
//				cout << s << endl;
//				break;
//			}
//			case 2:
//			{
//				int a = 0, b = 0;
//				cin >> a >> b;
//				s = s.substr(a, b);
//				cout << s << endl;
//				break;
//			}
//			case 3:
//			{
//				int n = 0;
//				cin >> n;
//				string tmp;
//				cin >> tmp;
//				s.insert(n, tmp);
//				cout << s << endl;
//				break;
//			}
//			case 4:
//			{
//				string tmp;
//				cin >> tmp;
//				size_t sz=s.find(tmp);
//				if (sz == string::npos) {
//					cout << -1 << endl;
//				}
//				else {
//					cout << sz << endl;
//				}
//				break;
//			}
//		}
//	}
//	return 0;
//}


//#include<iostream>
//using namespace std;
//#include<string>
//int main() {
//	string s1;
//	bool flag = true;
//	while(cin >> s1){
//		int len = s1.size();
//		if (flag) {
//			cout << len;
//			flag = false;
//		}
//		else {
//			cout << ",";
//			cout << len;
//		}
//	}
//	return 0;
//}


//#include<iostream>
//using namespace std;
//#include<string>
//int main() {
//	string s;
//	getline(cin,s);
//	int sum = 0;
//		for (char ch : s) {
//			if (ch >= 'a' && ch <= 'c') {
//				sum += (ch - 'a' + 1);
//			}else if (ch >= 'd' && ch <= 'f') {
//				sum += (ch - 'd' + 1);
//			}else if (ch >= 'g' && ch <= 'i') {
//				sum += (ch - 'g' + 1);
//			}else if (ch >= 'j' && ch <= 'l') {
//				sum += (ch - 'j' + 1);
//			}else if (ch >= 'm' && ch <= 'o') {
//				sum += (ch - 'm' + 1);
//			}else if (ch >= 'p' && ch <= 's') {
//				sum += (ch - 'p' + 1);
//			}else if (ch >= 't' && ch <= 'v') {
//				sum += (ch - 't' + 1);
//			}else if (ch >= 'w' && ch <= 'z') {
//				sum += (ch - 'w' + 1);
//			}
//			else {
//				sum += 1;
//			}
//		}
//		cout << sum << endl;
//	return 0;
//}

//#include<iostream>
//using namespace std;
//
//int main() {
//
//    int n;
//    cin >> n;
//    int sum = 0;
//    for (int i = 1; i <= n; i++) {
//        if (i % 7 != 0 && i % 10 != 7 && i / 10 % 10 != 7) {
//            sum += (i * i);
//        }
//    }
//    cout << sum << endl;
//    return 0;
//}

//#include<iostream>
//using namespace std;
//#include<string>
//int main() {
//	string s;
//	string t;
//	cin >> s;
//	cin >> t;
//	int n;
//	cin >> n;
//	for (int i = 0; i < n; i++) {
//		int l1=0, r1=0, l2=0, r2=0;
//		cin >> l1 >> r1 >> l2 >> r2;
//		string obj1=  s.substr(l1 - 1, r1 - (l1 - 1));
//		string obj2 = t.substr(l2 - 1, r2 - (l2 - 1));
//		if (obj1 < obj2) {
//			cout << "yifusuyi" << endl;
//		}else if (obj1 > obj2) {
//			cout << "erfusuer" << endl;
//		}
//		else {
//			cout << "ovo" << endl;
//		}
//	}
//
//
//	return 0;
//}


#include<iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    for (int i = 0; i < n; i++) {
        for (int j = 0; j <= i; j++) {
            cout << j + 1 << " ";
        }
        cout << endl;
    }
    return 0;
}